package main

import (
	"bytes"
	"fmt"
)

//bytes.Buffer 是一种缓冲池的数据结构
//使用某些包的某个函数时，也许会要求传入这种数据结构 比如：
// http.NewRequest("POST", api_endpoints, bytes.NewBuffer(payload))
//至于为啥要非使用Buffer，我也不太清楚，可能是性能吧

//https://blog.csdn.net/flyfreelyit/article/details/80291945

func main() {
	str := "hello"
	bs := []byte(str)

	//通过[]byte 来创建一个Buffer
	buffer := bytes.NewBuffer(bs)

	//往Buffer的末尾写入字符串
	buffer.WriteString(" world")

	//往Buffer的末尾写入[]byte
	goStr := []byte(" go")
	buffer.Write(goStr)

	fmt.Println(buffer)
}
